﻿
Imports EntitiesLayer
Public Class frmModificarAsociarPermisosARol
    Dim idRol As Integer
    Dim listaPermisosSeleccionados As New List(Of Integer) 'en esta lista se guarda el codigo de los permisos seleccionados
    Dim nombre As String 'codigo del rol
    Dim descripcion As String 'descripcion del rol

    'validacion checkbox de clientes
    Private Sub chkCCliente_Click(sender As Object, e As EventArgs) Handles chkCCliente.Click
        'esto valida que si uno le da click a este checkbox los otros dos se le quite el check
        MsgBox(chkCCliente.Text)
        If chkCRCliente.Checked = True Then 'si el check esta en true
            chkCRCliente.Checked = False ' quita el check y lo pone en false
        ElseIf chkCRMClientes.Checked = True Then
            chkCRMClientes.Checked = False
        End If

    End Sub

    Private Sub chkCRMClientes_Click(sender As Object, e As EventArgs) Handles chkCRMClientes.Click
        'esto valida que si uno le da click a este checkbox los otros dos se le quite el check
        If chkCCliente.Checked = True Then 'si el check esta en true
            chkCCliente.Checked = False ' quita el check y lo pone en false
        ElseIf chkCRCliente.Checked = True Then
            chkCRCliente.Checked = False
        End If

    End Sub

    Private Sub chkCRCliente_Click(sender As Object, e As EventArgs) Handles chkCRCliente.Click
        'esto valida que si uno le da click a este checkbox los otros dos se le quite el check
        If chkCRMClientes.Checked = True Then 'si el check esta en true
            chkCRMClientes.Checked = False ' quita el check y lo pone en false
        ElseIf chkCCliente.Checked = True Then
            chkCCliente.Checked = False
        End If
    End Sub

    'validacion checkbox de manteniento: ejercicios, musculos, maquinas
    Private Sub chkCEjerciciosMusculosMaquinas_Click(sender As Object, e As EventArgs) Handles chkCEjerciciosMusculosMaquinas.Click
        'esto valida que si uno le da click a este checkbox los otros dos se le quite el check
        If chkCREjerciciosMusculosMaquinas.Checked = True Then 'si el check esta en true
            chkCREjerciciosMusculosMaquinas.Checked = False ' quita el check y lo pone en false
        ElseIf chkCRMEjerciciosMusculosMaquinas.Checked = True Then
            chkCRMEjerciciosMusculosMaquinas.Checked = False
        End If
    End Sub

    Private Sub chkCREjerciciosMusculosMaquinas_Click(sender As Object, e As EventArgs) Handles chkCREjerciciosMusculosMaquinas.Click
        'esto valida que si uno le da click a este checkbox los otros dos se le quite el check
        If chkCRMEjerciciosMusculosMaquinas.Checked = True Then 'si el check esta en true
            chkCRMEjerciciosMusculosMaquinas.Checked = False ' quita el check y lo pone en false
        ElseIf chkCEjerciciosMusculosMaquinas.Checked = True Then
            chkCEjerciciosMusculosMaquinas.Checked = False
        End If
    End Sub

    Private Sub chkCRMEjerciciosMusculosMaquinas_Click(sender As Object, e As EventArgs) Handles chkCRMEjerciciosMusculosMaquinas.Click
        'esto valida que si uno le da click a este checkbox los otros dos se le quite el check
        If chkCREjerciciosMusculosMaquinas.Checked = True Then 'si el check esta en true
            chkCREjerciciosMusculosMaquinas.Checked = False ' quita el check y lo pone en false
        ElseIf chkCEjerciciosMusculosMaquinas.Checked = True Then
            chkCEjerciciosMusculosMaquinas.Checked = False
        End If
    End Sub


    'validacion checkbox de roles
    Private Sub chkCRoles_Click(sender As Object, e As EventArgs) Handles chkCRoles.Click
        If chkCRRoles.Checked = True Then 'si el check esta en true
            chkCRRoles.Checked = False ' quita el check y lo pone en false
        ElseIf chkCRMRoles.Checked = True Then
            chkCRMRoles.Checked = False
        End If


    End Sub

    Private Sub chkCRRoles_Click(sender As Object, e As EventArgs) Handles chkCRRoles.Click
        If chkCRoles.Checked = True Then 'si el check esta en true
            chkCRoles.Checked = False ' quita el check y lo pone en false
        ElseIf chkCRMRoles.Checked = True Then
            chkCRMRoles.Checked = False
        End If

    End Sub

    Private Sub chkCRMRoles_Click(sender As Object, e As EventArgs) Handles chkCRMRoles.Click
        If chkCRoles.Checked = True Then 'si el check esta en true
            chkCRoles.Checked = False ' quita el check y lo pone en false
        ElseIf chkCRRoles.Checked = True Then
            chkCRRoles.Checked = False
        End If
    End Sub

    'validacion checkbox de configuracion
    Private Sub chkConsultarInfoGym_Click(sender As Object, e As EventArgs) Handles chkConsultarInfoGym.Click
        If chkConsultarModificarInfoGym.Checked = True Then 'si el check esta en true
            chkConsultarModificarInfoGym.Checked = False ' quita el check y lo pone en false
        End If
    End Sub

    Private Sub chkConsultarModificarInfoGym_Click(sender As Object, e As EventArgs) Handles chkConsultarModificarInfoGym.Click
        If chkConsultarInfoGym.Checked = True Then 'si el check esta en true
            chkConsultarInfoGym.Checked = False ' quita el check y lo pone en false
        End If
    End Sub



    Private Sub frmModificarAsociarPermisosARol_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        'Mostrar los datos del form frmModificarImagenesEjercicio
        Dim frmConsultarRoless As New frmConsultarRoles 'crea una instancia del form modificar imagenes de ejercicios
        Dim frmModificarRoles As New frmModificarRol

        For Each x As Control In Me.Parent.Controls.OfType(Of frmModificarRol)()

            frmModificarRoles = x
            idRol = CInt(frmModificarRoles.txtIdRol.Text)

        Next


        Dim rolSeleccionado As Rol = objGestor.buscarRol(idRol) 'carga el rol seleccionado en el dataGrid


        listaPermisos = objGestor.listaPermisos(rolSeleccionado.Id)
        For Each check As CheckBox In panelCheckboxes.Controls.OfType(Of CheckBox)()

            For Each permiso As Integer In listaPermisos.OfType(Of Integer)()

                If check.AccessibleName = permiso Then
                    check.Checked = True
                End If
            Next



        Next
    End Sub

    Private Sub btnSiguiente_Click(sender As Object, e As EventArgs) Handles btnSiguiente.Click

        For Each checkbox As CheckBox In panelCheckboxes.Controls.OfType(Of CheckBox)() 'recorre el panel que contiene los checkboxes
            If checkbox.Checked = True Then
                listaPermisosSeleccionados.Add(CInt(checkbox.AccessibleName))
            End If
        Next
        Dim frmModificar As New frmModificarRol
        For Each x As Control In Me.Parent.Controls.OfType(Of frmModificarRol)()

            frmModificar = x
            nombre = frmModificar.txtNombre.Text
            descripcion = frmModificar.txtDescripcion.Text

        Next
        objGestor.modificarRol(idRol, nombre, descripcion, listaPermisosSeleccionados)
        MsgBox("se modifico con exito")

        Me.Hide()
        frmTransparente.Close()
        frmSecundario.Close()
    End Sub

    Private Sub btnCancelar_Click(sender As Object, e As EventArgs) Handles btnCancelar.Click
        Me.Hide()
        frmTransparente.Close()
        frmSecundario.Close()

    End Sub

    Private Sub PictureBox1_Click(sender As Object, e As EventArgs) Handles PictureBox1.Click
        For Each x As Control In Me.Parent.Controls.OfType(Of frmModificarRol)()
            x.Visible = True

        Next
        Me.Visible = False
    End Sub
End Class
